package demo;

import javax.swing.*;
import java.util.*;

public class Test {
    public static void func1(List<Integer> list) {

    }
    public static void func2(ArrayList<Integer> list) {

    }

    public static void main(String[] args) {
        func1(new ArrayList<>());
        func1(new LinkedList<>());

        func2(new ArrayList<>());
        //func2(new LinkedList<>());


        //list只能调用父类自己的方法，对象的其他方法调用不了
        List<Poker> pokers1 = new ArrayList<>();//如果拿接口对象来接收对象：好处是 可以发生向上转型。
        ArrayList<Poker> pokers2 = new ArrayList<>();//拿接口来接收，可以做到接收不同的对象，只要实现了这个接口的都可以
    }


    public static void main1(String[] args) {
        Game game = new Game();

        //买牌
        List<Poker> pokers = game.buyPoker();
        System.out.println(pokers);
        //洗牌
        game.shuffle(pokers);
        System.out.println("洗牌：");
        System.out.println(pokers);

        //揭牌
        List<List<Poker>> hand = game.game(pokers);
        System.out.println("揭牌：");
        for (int i = 0; i < hand.size(); i++) {
            System.out.println("第"+(i+1)+"个人的牌："+hand.get(i));
        }
        System.out.println("剩下的牌：");
        System.out.println(pokers);
    }
}
